FragmentPagerAdapter

Deprecated

Switch to androidx.viewpager2.widget.ViewPager2 and use androidx.viewpager2.adapter.FragmentStateAdapter instead.

Implementation of PagerAdapter that represents each page as a Fragment that is persistently kept in the fragment manager as long as the user can return to the page.

This version of the pager is best for use when there are a handful of typically more static fragments to be paged through, such as a set of tabs. The fragment of each page the user visits will be kept in memory, though its view hierarchy may be destroyed when not visible. This can result in using a significant amount of memory since fragment instances can hold on to an arbitrary amount of state. For larger sets of pages, consider FragmentStatePagerAdapter.

When using FragmentPagerAdapter the host ViewPager must have a valid ID set.

Subclasses only need to implement getItem and getCount to have a working adapter.

Here is an example implementation of a pager containing fragments of lists: {@sample samples/Support4Demos/src/main/java/com/example/android/supportv4/app/FragmentPagerSupport.java * complete}

The R.layout.fragment_pager resource of the top-level fragment is: {@sample samples/Support4Demos/src/main/res/layout/fragment_pager.xml * complete}

The R.layout.fragment_pager_list resource containing each individual fragment's layout is: {@sample samples/Support4Demos/src/main/res/layout/fragment_pager_list.xml * complete}

Constructors

Link copied to clipboard
constructor(@NonNull fm: FragmentManager)
Constructor for FragmentPagerAdapter that sets the fragment manager for the adapter.
constructor(@NonNull fm: FragmentManager, behavior: Int)
Constructor for FragmentPagerAdapter.

Properties

Link copied to clipboard
Indicates that only the current fragment will be in the RESUMED state.
Link copied to clipboard
Indicates that setUserVisibleHint will be called when the current fragment changes.

Functions

Link copied to clipboard
open fun destroyItem(@NonNull container: ViewGroup, position: Int, @NonNull object: Any)
Link copied to clipboard
open fun finishUpdate(@NonNull container: ViewGroup)
Link copied to clipboard
abstract fun getItem(position: Int): Fragment
Return the Fragment associated with a specified position.
Link copied to clipboard
open fun getItemId(position: Int): Long
Return a unique identifier for the item at the given position.
Link copied to clipboard
open fun instantiateItem(@NonNull container: ViewGroup, position: Int): Any
Link copied to clipboard
open fun isViewFromObject(@NonNull view: View, @NonNull object: Any): Boolean
Link copied to clipboard
open fun restoreState(@Nullable state: Parcelable, @Nullable loader: ClassLoader)
Link copied to clipboard
Link copied to clipboard
open fun setPrimaryItem(@NonNull container: ViewGroup, position: Int, @NonNull object: Any)
Link copied to clipboard
open fun startUpdate(@NonNull container: ViewGroup)